/* eslint-disable react/no-typos */
import React, { Component } from 'react';
import PropTypes from 'prop-types'
import './index.css'

class Header extends Component {

  // 对接收到的 props 进行：类型、必要性的限制
  static propTypes = {
    addTodo:PropTypes.func.isRequired
  }

  // 键盘事件回调
  handleKeyUp = (event)=>{
    // 解构赋值获取keyCode, target
    const {keyCode, target} = event
    // 判断输入是否为回车按键
    if(keyCode !== 13) return;
    // 非空校验
    if(target.value.trim() === ''){
      alert("请输入内容")
      return
    }
    // 准备 todoObj 对象
    let todoObj = {id:'111', name:target.value, done:false}
    // 将 todoObj 对象传递给 App
    this.props.addTodo(todoObj)
    console.log(todoObj)
    // 清空输入
    target.value = ''
  }

  render() {
    return (
      <div className="todoHeader">
        <input onKeyUp={this.handleKeyUp} type="text" placeholder="请输入你的任务名称，按回车进行确认" />
      </div>
    );
  }
}

export default Header;